﻿using System;
using NHibernate.Validator.Constraints;

namespace DataStore.Domain
{
    /// <summary>
    /// Company types
    /// </summary>
    [Serializable]
    public class CompanyType
    {
        /// <summary>
        /// Gets or sets the id.
        /// </summary>
        /// <value>The id.</value>
        public virtual Guid Id { get; set; }
        /// <summary>
        /// Gets or sets the name of the type.
        /// </summary>
        /// <value>The name.</value>
        [NotNullNotEmpty]
        public virtual string Name { get; set; }
        /// <summary>
        /// Gets or sets the abbreviation of the type.
        /// </summary>
        /// <value>The abbreviation.</value>
        public virtual string Abbreviation { get; set; }
        /// <summary>
        /// Gets or sets the country.
        /// </summary>
        /// <value>The country.</value>
        public virtual Country Country { get; set; }
        /// <summary>
        /// Gets or sets a value indicating whether this instance is legal personality.
        /// </summary>
        /// <value>
        /// 	<c>true</c> if this instance is legal personality; otherwise, <c>false</c>.
        /// </value>
        public virtual bool IsLegalPersonality { get; set; }
    }
}
